perm filename SBST11.9[KL,SYS] blob
sn#209168 filedate 1976-04-03 generic text, type C, neo UTF8
COMMENT ā VALID 00010 PAGES
C REC PAGE DESCRIPTION
C00001 00001
C00002 00002 MODIFICATION HISTORY
C00003 00003
C00005 00004
C00006 00005
C00009 00006
C00011 00007
C00015 00008
C00018 00009
C00021 00010
C00023 ENDMK
Cā;
;;;MODIFICATION HISTORY
;;;
;;; 15 NOV 75 OBTAINED FROM DEC (KLDCP REV 7)
;;; 15 NOV 75 CONVERTED TO PALX FORMAT
;;;
.SBTTL *STORE* PROGRAM STORAGE FILE, 5-AUG-75
.MACRO INFORM A,B
.IF P2
.PRINT\A=B
\
.ENDC
.ENDM
INFORM PROGRAM END,\.
.NLIST
.IF DF KLDCP
.LIST
;DECISION TABLES FOR KL10/11 SUBROUTINE PACKAGE
$DTBL0:
$LF: .BYTE 12
$CR: .BYTE 15
$BELL: .BYTE 07
.BYTE 00
.EVEN
$DTBL1: $LFTBL ;LINE FEED FILL TABLE
$CRTBL ;CARRIAGE RETURN FILL TABLE
$BELLT ;BELL FILL TABLE
$LFTBL: .BYTE 1,1
.BYTE 2,1
.BYTE 2,4
$CRTBL: .BYTE 0,0
.BYTE 9.,1
.BYTE 2,4
$BELLT: .BYTE 2,2
.BYTE 2,2
.BYTE 2,2
$DTBL: 10000.
1000.
100.
10.
1.
$TBLL: 1.
10.
100.
1000.
10000.
.NLIST
.ENDC ;KLDCP
.LIST
;THIS SECTION CONTAINS ALL PROGRAM TEXT LITERALS
$$FF: $$CLIT
$$LITT=.
$$$FF=$$CLIT
INFORM LITERAL END,\$$CLIT
;BUFFER CREATION MACROS
$$BUF= COREND-600 ;ROOM FOR STACK
;WORD BUFFER ASSIGNMENT MACRO
;USAGE IS: .BUFW TAG=,NUMBER-OF-WORDS [OPTIONAL]
.MACRO .BUFW $BTAG,$BARG
.IIF NE $$BUF&1,$$BUF=$$BUF-1
.IIF B $BARG,$$BARG=1
.IIF NB $BARG,$$BARG=$BARG
$$BUF=$$BUF-<$$BARG*2>
; .NLIST
; .LIST ME
; .LIST
$BTAG $$BUF
; .NLIST ME
.ENDM
;BYTE BUFFER ASSIGNMENT MACRO
.MACRO .BUFB $BTAG,$BARG
.IIF B $BARG,$$BARG=1
.IIF NB $BARG,$$BARG=$BARG
$$BUF=$$BUF-$$BARG
; .NLIST
; .LIST ME
; .LIST
$BTAG $$BUF
; .NLIST ME
.ENDM
; .NLIST LOC
;PROGRAM BUFFERS & STORAGE AREA
;CLEARED ON INITIALIZATION
;STORAGE FOR DTE20 ADDRESS POINTERS
.BUFW .DIAG3= ;XXX36
.BUFW .STDTE= ;XXX34
.BUFW .DIAG2= ;XXX32
.BUFW .DIAG1= ;XXX30
.BUFW .T11DT= ;XXX26
.BUFW .T10DT= ;XXX24
.BUFW .T11AD= ;XXX22
.BUFW .T10AD= ;XXX20
.BUFW .BC11= ;XXX16
.BUFW .BC10= ;XXX14
.BUFW .TENA2= ;XXX12
.BUFW .TENA1= ;XXX10
.BUFW .DAT1= ;XXX06
.BUFW .DAT2= ;XXX04
.BUFW .DAT3= ;XXX02
.BUFW .DELAY= ;XXX00
;SPECIAL LOAD ONLY CLEAR & SETUP AREA
.BUFW $ONETM= ;ONE TIME FLAG
.BUFW $ILDSUM= ;"KLDCP" CHECKSUM
.BUFW $PWRCNT= ;POWER RESTART COUNT
.BUFW DEVTYP= ;DEVICE TYPE: -1=ACT, 0=DTA, 1=RP04
.BUFW FLOPPY= ;-1, USE RX11/RX01 FLOPPY
.BUFW LPTFLG= ;LINE PRINTER FLAG
.BUFW LPTYPE= ;LINE PRINTER TYPE
.BUFW RXUNIT= ;FLOPPY UNIT
.BUFW DTUNIT= ;DECTAPE UNIT
.BUFW RPUNIT= ;RP04 UNIT
.BUFW $BKFLG= ;BREAKPOINT FLAG
.BUFW CLKPE=,3 ;CLOCK PE DFWRT STORAGE
.BUFW PEBITS= ;CLOCK STOP PARITY ENABLE BITS
.BUFW PAGDFL=,3 ;KL10 "DATAO PAG,0" DEFAULT
.BUFW CLKDFL=,3 ;KL10 CLOCK DEFAULT
.BUFW SWS10=,3 ;PDP-10 SWITCHES
.BUFW $SWS10=,3
.BUFW $$SWR=
.BUFW $$STJRS=,3 ;PDP-10 START "JRST"
.BUFW $STODD= ;"SETMPH" VARIABLES
.BUFB $MPHMK= ;MASK, A OR B CHANGE
.BUFB $MPHDF= ;DIAG FCN, A OR B CHANGE
.BUFW TGOADR=,2 ;PDP-10 GO START ADDRESS
.BUFW PGOADR=,2 ;PROGRAM GO ADDRESS
.BUFW PGOCTL= ;PROGRAM GO CONTROL
.BUFW SEADR= ;PDP-11 START ADDRESS
.BUFW ITSFLG= ;NON-ZERO ITS IOELEVEN PROGRAM IS IN CORE
;KLINIK FIELD SERVICE REMOTE FLAG
.BUFW DL11EFLG=
;BP TABLE; INST, ADR, CNT
.BUFW $BT=,<$NB*3> ;BP TABLE
.BUFW $BCA= ;BP CONTINUE ADDRESS
.BUFW $BTIS= ;BP TEMP
$ILDCLR=$$BUF
;COMMON STORAGE
.BUFW $SWMON= ;MONITOR LOW ORDER SWITCHES
.BUFW MONCTL= ;0=STANDALONE, -1=MONITOR
.BUFW TENSWD= ;PDP-10 SWITCH DEPOSIT FLAG
.BUFW TENCLK= ;PDP-10 CLOCK ENABLE FLAG
.BUFW PCMDFLG= ;PROGRAM COMMAND FLAG
.BUFW PCMDNF= ;PROGRAM CMD NO PRINT FLAG
.BUFW $ITERA= ;ITERATION REGISTER
.BUFW $ENDCT= ;END OF PASS REPORT COUNT
.BUFW $EOPCT= ;END OF PASS COUNT
.BUFW $ERRPC= ;ERROR PC
.BUFW $ERTTL= ;TOTAL ERRORS DETECTED
.BUFW $ERFLG= ;ERROR FLAG
.BUFW $PASS= ;PASS COUNT
.BUFW $CMTAG= ;COMMON TAG
;DECTAPE/RP04 AND LOADING BUFFERS
.BUFW DVBUF=,256. ;DEVICE BUFFER
VFUDAT=DVBUF
.BUFW EXTBF=,2 ;ASCII EXTENSION BUFFER
.BUFW NAMBF=,3 ;ASCII NAME BUFFER
.BUFW DIRST4=
.BUFW DIRST3=
.BUFW DIRST2=
.BUFW DIRST1=
.BUFW DIRST0= ;PSEUDO DIRECTORY CONVERSION STORAGE
.BUFW DTEXT= ;RAD50 EXT
.BUFW DTEXTS=,3 ;UNPACKED EXT (ASCII)
.BUFW DTLNGTH= ;DECTAPE FILE LENGTH
.BUFW DTSTRT= ;DECTAPE FILE START BLOCK
.BUFW DVADR= ;DEVICE DATA ADDRESS POINTER
.BUFW DVCNT= ;DEVICE BYTE COUNT
.BUFW DVDIRF= ;DEVICE DIRECTORY FLAG
.BUFW CDADR= ;CORE DUMP BUFFER POINTER
.BUFW DIAFLG= ;"DIAMON" OPERATION FLAG
.BUFW RPEOF= ;END-OF-FILE FLAG
.BUFW WRTBAK=,3 ;RPLKUP & RPWRFL RETURN INFO
.BUFW $RPINFO=,2 ;DVDATA POINTERS
.BUFW NAMRAD=,3 ;RAD50 NAME.EXT
.BUFW RPFDNB= ;FILE DIRECTORY LENGTH IN BLOCKS
.BUFW RPFDTS= ;FILE DIRECTORY TRACK & SECTOR
.BUFW RPFDCY= ;FILE DIRECTORY CYLINDER NUMBER
.BUFW RPIXNB= ;INDEX FILE LENGTH IN BLOCKS
.BUFW RPIXTS= ;INDEX FILE TRACK & SECTOR
.BUFW RPIXCY= ;INDEX FILE CYLINDER NUMBER
.BUFW RPIXCB= ;INDEX FILE CURRENT BLOCK
.BUFW RPLAST= ;INDEX FILE LAST BLOCK
.BUFW CYLNDR= ;CURRENT CYLINDER
.BUFW TRKSCT= ;CURRENT TRACK & SECTOR
.BUFW OFFSET= ;CURRENT OFFSET
.BUFW BUFADR= ;BUFFER ADDRESS
.BUFW BUFSIZ= ;BUFFER SIZE
.BUFW WRDCNT= ;READ/WRITE WORD COUNT
.BUFW FILDSB=,FDESIZ+2 ;FILE DESCRIPTOR
;DECTAPE PARAMETER STORAGE
.BUFW REVCNT= ;REVERSE COUNT
.BUFW INTSW= ;INIT SWITCH
.BUFW $CKS11= ;PDP-11 BINARY CHECKSUM
.BUFW LTMP= ;LOAD TEMP
.BUFW LBC= ;LOAD BYTE COUNT
.BUFW TRYCTR= ;DECTAPE TRY COUNT
.BUFW DTXCMD= ;DECTAPE XFER COMAND
.BUFW WCSAV= ;WORD COUNT SAVE
.BUFW CASAV= ;CURRENT ADDRESS SAVE
.BUFW DTBLK= ;DECTAPE BLOCK NUMBER
;FLOPPY PARAMETER STORAGE
.BUFW $$ITS1= ;FLOPPY "$RXITS" COUNTER
.BUFW RXSADR= ;FLOPPY SECTOR ADDRESS
.BUFW RXTADR= ;FLOPPY TRACK ADDRESS
.BUFW RXBLKT= ;FLOPPY BLOCK # TEMP
.BUFW RXWCMD= ;FLOPPY WORKING COMMAND
.BUFW RXCMD= ;FLOPPY COMMAND
.BUFW RXBLK= ;FLOPPY BLOCK NUMBER
;LOAD PARAMETER STORAGE
.BUFW LDATAE=
.BUFW LDATA=,34. ;LOAD DATA
.BUFW LDADR= ;LOAD ADDRESS
.BUFW LDCNT= ;LOAD WORD COUNT
.BUFW LDOCTF= ;LOAD OCTAL FORMAT FLAG
.BUFW LDCNTL= ;LOAD CONTROL WORD
.BUFW LDOVRD= ;LOAD CONTROL OVERRIDE
.BUFW LDZBLK= ;LOAD 10 ZERO BLOCK FLAG
.BUFW SRTFLG= ;SELF START FLAG
.BUFW DEVLC= ;DEVICE LINE COUNT
.BUFW ARETRY= ;ACT10 RETRY COUNT
.BUFW HLPPNT= ;ACT10 HELP PRINT FLAG
;TELETYPE BUFFERS
.BUFW $INPTR= ;INPUT POINTERS
.BUFW $INPTC=
.BUFB $INBUF=,142. ;INPUT BUFFER
.BUFW $OUTPC= ;OUTPUT POINTERS
.BUFW $OUTPT=
.BUFW $OUTPP= ;OUTPUT PRINT POSITION
.BUFB $OUTBF=,142. ;OUTPUT BUFFER
.BUFW $TNPTR= ;10 INPUT POINTERS
.BUFW $TNPTC=
.BUFB $TNBUF=,142. ;10 INPUT BUFFER
.BUFW $TNCHR=,3 ;LAST CHAR TYPED (FOR TEN)
.BUFW TENTTY= ;10 "TENCHR" FLAG
.BUFW $TTYIN=
.BUFB $TTSAV=,12.
.BUFW ENQFLG= ;COMMUNICATIONS IN PROGRESS
.BUFW MSGNBR= ;COMMUNICATIONS MESSAGE NUMBER
.BUFW COMNBR= ;COMMUNICATION NUMBER
.BUFB COUTBF=,142. ;COMMUNICATIONS OUTPUT BUFFER
.BUFW COUTSP=,2 ;OUTPUT CONTROL CHARACTERS
.BUFB CINBF=,142. ;COMMUNICATIONS INPUT BUFFER
.BUFW CINSP=,2 ;INPUT CONTROL CHARACTERS
.BUFW $PRNTH= ;PRINT HEAD POSITION
.BUFW $PGWID= ;PAGE WIDTH
.BUFW $TPLIN= ;NUMBER OF LINES ON A PAGE
.BUFW $TPLIT= ;LINES TALLY
.BUFW $XOFLG= ;XOFF FLAG, -1 = NO PRINT
.BUFW CTRLOF= ;CONTROL O FLAG
.BUFW $EOLFLG= ;END OF LINE FLAG
.BUFW $TTLKF= ;TTLOOK INPUT CHECKS INHIBIT
.BUFW TILNWF= ;TTY INPUT WAIT FLAG
.BUFW $FORCE= ;FORCE PRINTOUT FLAG
.BUFW $TTYFL= ;TTY FILL PARAMETER
.BUFW $0FLG= ;ZERO FILL FLAG
.BUFW $NEG= ;NEGATE NUMBER INPUT FLAG
.BUFW $SVH=
.BUFW $SVM=
.BUFW $TICHR= ;TTY DRIVER INPUT CHAR
.BUFW $TOCHR= ;TTY DRIVER OUTPUT CHAR
.BUFW DDTFLG= ;PDP-10 DDT INPUT MODE FLAG
;CONSOLE PARAMETER STORAGE
.BUFW $KONSP= ;SAVED STACK POINTER
.BUFW ALLFLG= ;ALL PRINT FLAG
.BUFW RPTFLG= ;COMMAND REPEAT FLAG
.BUFW VERIFY= ;PROGRAM VERIFY FLAG
.BUFW .EADR= ;EXAMINE 11 ADDRESS
.BUFW $ECADR= ;EXAMINE C-RAM ADDRESS
.BUFW $EDADR= ;EXAMINE D-RAM ADDRESS
.BUFW $ADR=
.BUFW .DFRDA=,3
.BUFW .DPXAD=,2
.BUFW L10ADR=,2 ;LOAD 10 ADDRESS
.BUFW TENRUN= ;TEN RUNNING FLAG
.BUFW MONMODE= ;TEN MONITOR MODE FLAG
.BUFW MTTYOF= ;MONITOR TTY OUTPUT IN PROGRESS
.BUFW $TTYTIM= ;TTY TIMEOUT COUNT
;BREAKPOINT STORAGE
.BUFW $R0TMP=
.BUFW $PCSAV=
.BUFW $PSSAV=
.BUFW $TEMP0=,3
.BUFW $ADR1=
.BUFW $SPSAV=
.BUFW $R5SAV=
.BUFW $R4SAV=
.BUFW $R3SAV=
.BUFW $R2SAV=
.BUFW $R1SAV=
.BUFW $R0SAV=
;MISCELLANEOUS STORAGE
.BUFW $EMADR= ;EMT ADDRESS (+2)
.BUFW $SWTCH= ;SWITCHES
.BUFW $$SVSP=
.BUFW TEMP=
.BUFW IFILEF= ;INDIRECT FILE FLAG
.BUFW IFINP= ;INDIRECT STORAGE POINTER
.BUFW JFILEF= ;DOUBLE INDIRECT FILE FLAG
.BUFW JFINP= ;DOUBLE INDIRECT STORAGE POINTER
.BUFW PRGRUN= ;PROGRAM RUNNING FLAG
.BUFW MEMPEF= ;PARITY FLAG
.BUFW .HCFLG= ;ALLOW HALT CONTINUE FLAG
.BUFW .HCADR= ;HALT CONTINUE ADDRESS
.BUFW DDTTM1= ;DDT MODE TIMEOUT COUNTS
.BUFW DDTTM2=
.BUFW $ECMD=,3 ;DTE20 COMMAND STORAGE
.BUFW $SAV20=,3 ;PDP-10 SAVE 20 STORAGE
;KL10 SUBROUTINE STORAGE
.BUFW ZEROS=,3 ;SOURCE OF 36 ZEROS
.BUFW VMADAT=,3 ;VMA & PC TEMP
.BUFW XXDAT= ;DF WRITE TEMP
.BUFW MMDAT=,3 ;WWADR TEMP
.BUFW WREADY=,3 ;$WCRAM TEMP
.BUFW SIGNL=
.BUFW $BUFRC=,6 ;$RCRAM TEMP
.BUFW SIGNL2=
.BUFW SIGNL3=
.BUFW DDRAM=,3 ;$DRAMAD TEMP
.BUFW RDRTMP=,2 ;$RDRAM TEMP
.BUFW $DRAM=,6
.BUFW $DDRMS=
.BUFW $STDAT= ;$BURST TEMP
.BUFW KLCLKR= ;KL10 CLOCK LOGICALLY RUNNING FLAG
.BUFW TENDAT=,3 ;PDP-10 INPUT DATA WORD
.BUFW TENAC0=,2 ;PDP-10 AC0 ADDRESS
.BUFW C10CW=,3 ;PDP-10 CLOCK WAIT COUNT
.BUFW CLKCNT=,3 ;PDP-10 CLOCK COUNT
BUFCLR= $$BUF
; .LIST LOC
INFORM LOWEST VARIABLE,\$$BUF